package com.lagou.com.lagou.homework.Modules2.item1;

/*
* 作业一：
定义一个长度为[16][16]的整型二维数组并输入或指定所有位置的元素值，分别实现二维数组中所有行和所有列中所有元素的累加和并打印。
再分别实现二维数组中左上角到右下角和右上角到左下角所有元素的累加和并打印。
* */

import java.util.Scanner;
public class Array {

    int[][] arr = new int[16][16];
    //System.out.println(arr);
    //int test1 = 10;
    //元素的输入
    public void scInput(){
        boolean falg = true;
        while (falg){
            Scanner sc = new Scanner(System.in);
            System.out.println("请输入需要填入数组的位置和数值(x y num)：");

            int x = sc.nextInt();
            int y = sc.nextInt();
            int num = sc.nextInt();
            arr[x][y] = num;
            System.out.println("结束输入按q回车即可,继续任意键");
            //if()
            String falg1 = sc.next();
            //String str1 = "q";
            if(falg1.equals("q")){
                    falg = false;
                }
        }
    }
    //二维数组的打印
    public void show() {
        for (int i = 0; i < 16; i++) {
            for (int j = 0; j < 16; j++) {
                System.out.print(arr[i][j] + "  ");
            }
            System.out.println( );
        }
    }
    //数组全部元素相加
    public int add(){
        int num = 0;
        for (int i = 0; i < 16; i++) {
            for (int j = 0; j < 16; j++) {
                num += arr[i][j];
            }
        }
        return num;
    }
    //数组00-1515元素相加
    public int add1(){
        int num = 0;
        for (int i = 0; i < 16; i++) {
            for (int j = 0; j < 16; j++) {
                if(i==j){
                    num += arr[i][j];
                }
            }
        }
        return num;
    }
    //数组15,0-0,15元素相加
    public int add2(){
        int num = 0;
        for (int i = 0; i < 16; i++) {
            for (int j = 0; j < 16; j++) {
                if(i==15-j){                   //0,15;1,14----15,0
                    num += arr[i][j];
                }
            }
        }
        return num;
    }
    public static void main(String[] args) {
        Array ay = new Array();
        //System.out.println(ay.test1);
        //System.out.println( );
        ay.scInput();
        ay.show();
        int num = ay.add();
        System.out.println( );
        System.out.println("数组全部元素的和：" + num);
        int num1 = ay.add1();
        System.out.println( );
        System.out.println("左上角到右下角元素的和：" + num1);
        int num2 = ay.add2();
        System.out.println( );
        System.out.println("左下角到右上角元素的和：" + num2);
    }

}
